Device Driver_Kernel Interface

Device Driver
디바이스 드라이버 관련한 함수(등록/해제)

<linux/fs.h>
1. 등록
int register_chrdev(unsigned int major, const char* name, struct file_operations* fops);
int register_blkdev(unsigned int major, const char* name, struct file_operations* fops);
character/block driver를 xxxdev[major]에 등록한다.

디바이스 드라이버(*.ko)를 장치 노드에 등록
2. 해제
int unregister_chrdev(unsigned int major, const char* name);
int unregister_blkdev(unsigned int major, const char* name);
character/block driver를 xxxdev[major]에서 제거한다.
3. 네트워크 디바이스 드라이버의 경우 등록/해제
int register_netdev(struct net_device* dev);
int unregister_netdev(struct net_device* dev);
4. 장치번호 dev로 부터 major/minor 번호 구하는 함수
MAJOR(kdev_t dev);
MINOR(kdev_t dev);